{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "'''\n",
    "【课程1.5】  帕累托分析\n",
    "\n",
    "帕累托分析（贡献度分析） → 帕累托法则：20/80定律\n",
    "\n",
    "“原因和结果、投入和产出、努力和报酬之间本来存在着无法解释的不平衡。一般来说，投入和努力可以分为两种不同的类型：\n",
    "多数，它们只能造成少许的影响；少数，它们造成主要的、重大的影响。”\n",
    "→ 一个公司，80%利润来自于20%的畅销产品，而其他80%的产品只产生了20%的利润\n",
    "\n",
    "例如：\n",
    "** 世界上大约80％的资源是由世界上15％的人口所耗尽的\n",
    "** 世界财富的80％为25％的人所拥有；在一个国家的医疗体系中\n",
    "** 20％的人口与20％的疾病，会消耗80％的医疗资源。\n",
    "\n",
    "一个思路：通过二八原则，去寻找关键的那20%决定性因素！\n",
    "\n",
    "'''"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "% matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "A    4377.396859\n",
      "B    4646.306400\n",
      "C    5046.403470\n",
      "D     999.850611\n",
      "E    2408.016058\n",
      "F    4318.273353\n",
      "G    3893.589001\n",
      "H    2486.025654\n",
      "I    2176.618725\n",
      "J    3589.327506\n",
      "dtype: float64\n",
      "------\n",
      "超过80%累计占比的节点值索引为： H\n",
      "超过80%累计占比的节点值索引位置为： 6\n",
      "------\n",
      "核心产品为：\n",
      "C    5046.403470\n",
      "B    4646.306400\n",
      "A    4377.396859\n",
      "F    4318.273353\n",
      "G    3893.589001\n",
      "J    3589.327506\n",
      "H    2486.025654\n",
      "dtype: float64\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x9805fd0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 帕累托分布分析 \n",
    "\n",
    "data = pd.Series(np.random.randn(10)*1200+3000,\n",
    "                index = list('ABCDEFGHIJ'))\n",
    "print(data)\n",
    "print('------')\n",
    "# 创建数据，10个品类产品的销售额\n",
    "\n",
    "data.sort_values(ascending=False, inplace= True)\n",
    "# 由大到小排列\n",
    "\n",
    "plt.figure(figsize = (10,4))\n",
    "data.plot(kind = 'bar', color = 'g', alpha = 0.5, width = 0.7)  \n",
    "plt.ylabel('营收_元')\n",
    "# 创建营收柱状图\n",
    "\n",
    "p = data.cumsum()/data.sum()  # 创建累计占比，Series\n",
    "key = p[p>0.8].index[0]  \n",
    "key_num = data.index.tolist().index(key) \n",
    "print('超过80%累计占比的节点值索引为：' ,key)\n",
    "print('超过80%累计占比的节点值索引位置为：' ,key_num)\n",
    "print('------')\n",
    "# 找到累计占比超过80%时候的index\n",
    "# 找到key所对应的索引位置\n",
    "\n",
    "p.plot(style = '--ko', secondary_y=True)  # secondary_y → y副坐标轴\n",
    "plt.axvline(key_num,hold=None,color='r',linestyle=\"--\",alpha=0.8)  \n",
    "plt.text(key_num+0.2,p[key],'累计占比为：%.3f%%' % (p[key]*100), color = 'r')  # 累计占比超过80%的节点\n",
    "plt.ylabel('营收_比例')\n",
    "# 绘制营收累计占比曲线\n",
    "\n",
    "key_product = data.loc[:key]\n",
    "print('核心产品为：')\n",
    "print(key_product)\n",
    "# 输出决定性因素产品"
   ]
  }
 ],
 "metadata": {
  "anaconda-cloud": {},
  "kernelspec": {
   "display_name": "Python [default]",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
